A digital certificate (“certificate”) provides a degree of assurance to information (e.g., a cryptographic key) associated with a certificate. A certificate is digitally signed by the entity that offers it as a voucher for the authenticity of the information. If the certificate is issued by a trusted third party, it is assumed that this information content is valid. However, as discussed below, current techniques for determining the validity of a certificate are often inadequate.
Public key cryptography is an approach to enabling secure communications using key pairs. Each key pair includes a public key and a private key. The pubic key and private key are related so that a message encrypted by one key may be decrypted by the other, but it is computationally infeasible to deduce the private key given the public key (and conversely). The private key is typically created and securely held by an entity, while the corresponding public key is typically made widely available. Secure communications between parties may then be enabled by using the parties' public and private key pair.
Certificates have been devised to address some of the uncertainties inherent in public key cryptography. One uncertainty relates to the identity of the owner of the private key that corresponds to the public key, because the public key is widely available and subject to malicious modification. It is possible, for example, that a public key may be circulated that fraudulently purports to be the public key of party A, but the corresponding private key of which is actually held by party B.
Certificates provide a degree of assurance as to the identity of a holder of the private key corresponding to a particular public key. A certificate constitutes a certification by a certification authority (“CA”) that a particular key is the public key of a particular entity, and that this entity is the holder of the corresponding private key. That is, a certificate can be used to certify the authenticity of information such as a public key.
The certificate itself is an electronic document. Although a variety of formats exist, a certificate typically includes, among other items, the name of the certification authority, the name of the certificate holder, the expiration date of the certificate, the public key of the certificate holder, and the digital signature of the certification authority. The certificate constitutes a certification by the certification authority that the holder of the certificate is the owner of the public key specified in the certificate, and, by implication, is therefore the holder of the corresponding private key.
A certificate contains the dates during which it is operational. During its operational period, a certificate is valid unless suspended or revoked. A suspension is a temporary hold that is placed on a certificate, while a revocation means that the certificate is permanently terminated from the time of revocation forward. After its operational period, a certificate is considered to be expired. A certification authority typically records a state change for a certificate in a certificate revocation list (“CRL”). If a certificate is compromised, it must be rendered inoperable (e.g., revoked). To provide notification of certificate revocations, a CA provides a full list of certificates that have been revoked in the CRL. The CRL is typically issued on a periodic basis, which can be as frequently as daily. It is necessary to consult at least the last CRL that has been issued by the CA during the validity period of a certificate to determine whether a certificate obtained from the CA was revoked prior to its expiration. Obviously, periodic distribution of a CRL can introduce delay into the notification process. Also, the number of certificates issued by a CA will affect the size of a CRL.
The strength of a conclusion that a certificate is valid is dependent, for example, on whether the set of CRLs provided to the interested party is complete and the thoroughness of the individual or program that performs the review of these lists. Retaining lists of revoked certificates (CRLs) is a non-linear cost, while the number of certificates of interest may not change. Simply, if a company has 1,000 employees, there can only be 1,000 revoked certificates of interest. But if there is a national registry, it is conventionally the obligation of the company to get all revoked certificates for the nation, which itself may be orders of magnitude larger than the employee set. The currently used process is thus often inefficient, computationally expensive, and prone to error. A need therefore exists in the art for an enhanced facility for disseminating notifications of digital signature state changes.